# coding=utf-8

import sys
import pika

connection = pika.BlockingConnection(pika.ConnectionParameters(host='localhost'))
channel = connection.channel()

# 声明 Exchange，并指定其类型为广播
channel.exchange_declare(exchange='logs', exchange_type='fanout')

# 注意这里不再声明和绑定 Queue，这些工作在 Consumer 中做

message = ' '.join(sys.argv[1:]) or "info: Hello World!"

# 发布消息，注意这里的 routing_key 为空字符串
# 因为在广播模式下，指定 routing_key 是没有意义的
channel.basic_publish(exchange='logs',
                      routing_key='',
                      body=message)

print " [x] Sent %r" % (message,)
connection.close()
